Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Rust crate ruma-common to 0.15.0 #3

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

oxide-renovate[bot]
Copy link
Contributor

@oxide-renovate oxide-renovate bot commented Nov 19, 2024

This PR contains the following updates:

Package Type Update Change
ruma-common (source) workspace.dependencies minor 0.13.0 -> 0.15.0

Release Notes

ruma/ruma (ruma-common)

v0.15.0: ruma-common 0.15.0

Compare Source

Breaking changes:

  • #[serde(flatten)] on the only body field of a #[request] or #[response] struct is disallowed. #[ruma_api(body)] must be used instead.

Improvements:

  • The ruma_identifiers_storage compile-time cfg setting can also be configured by setting the RUMA_IDENTIFIERS_STORAGE environment variable at compile time. It has the benefit of not requiring to re-compile all the crates of the dependency chain when the value is changed.
  • The unstable-exhaustive-types cargo feature was replaced by the ruma_unstable_exhaustive_types compile-time cfg setting. Like all cfg settings, it can be enabled at compile-time with the RUSTFLAGS environment variable, or inside .cargo/config.toml. It can also be enabled by setting the RUMA_UNSTABLE_EXHAUSTIVE_TYPES environment variable.
  • HttpPusherData allows to set custom data for the pusher in the data field, due to a clarification in the spec.
    • The default_payload field that was behind the unstable-unspecified was removed. It can be added manually to the custom data.

v0.14.1: ruma-common 0.14.1

Compare Source

Bug fixes:

  • The KeyId::key_name method now returns the key name. In 0.14.0, key_name mistakenly returned the algorithm.

v0.14.0: ruma-common 0.14.0

Compare Source

Bug fixes:

  • The instance_id field was removed from ProtocolInstanceInit and is now an Option<String> for ProtocolInstance. It made the unstable-unspecified feature non-additive.

Breaking changes:

  • Rename the query_map attribute of the request macro to query_all, and remove the required bound to implement IntoIterator<Item = (String, String)>. This allows to use a struct or enum as well as a map to represent the list of query parameters. Note that the (de)serialization of the type used must work with serde_html_form.
  • The header attribute for the request and response macros accepts any type that implements ToString and FromStr.
  • The compat-key-id cargo feature was renamed to compat-server-signing-key-version.
  • (Owned)KeyName was renamed to (Owned)ServerSigningKeyVersion and is now validated according to the set of allowed characters defined in the docs, unless the compat-server-signing-key-version cargo feature is enabled.
  • The bounds on KeyId changed. The algorithm part must implement KeyAlgorithm and the key name part must implement KeyName.
  • The (owned_)server_signing_key_id macros were removed. For compile-time validated construction, use ServerSigningKeyId::from_parts with a SigningKeyAlgorithm and the server_signing_key_version macro.
  • Rename Signatures::insert to Signatures::insert_signature. Signatures::insert is now dereferenced to BTreeMap::insert.
  • Move the DeviceKeyAlgorithm::SignedCurve25519 into the new OneTimeKeyAlgorithm type.
  • Add (Owned)CrossSigningKeyId and use it instead of OwnedDeviceKeyId to identify CrossSigningKey's keys.
  • Add (Owned)CrossSigningOrDeviceSigningKeyId and use it instead of OwnedDeviceKeyId to identify signing keys in DeviceKeys's and CrossSigningKey's signatures.
  • Use OwnedDeviceSigningKeyId instead of OwnedDeviceKeyId to identify signing keys in SignedKey's signatures.
  • (Owned)DeviceKeyId is now a type alias of (Owned)KeyId.
    • Remove the (owned_)device_key_id macro, instead use DeviceKeyId::from_parts.
  • Use CrossSigningOrDeviceSignatures for the signatures of DeviceKeys.
  • Remove SignedKeySignatures and replace it with DeviceSignatures.
  • Remove CrossSigningKeySignatures and replace it with CrossSigningOrDeviceSignatures.

Improvements:

  • Add the InvalidHeaderValue variant to the DeserializationError struct, for cases where we receive a HTTP header with an unexpected value.
  • Implement Eq/Hash/PartialEq for ThirdPartyIdentifier, to check whether a ThirdPartyIdentifier has already been added by another user.
  • Add MatrixVersion::V1_11 and MatrixVersion::V1_12.
  • Clarify in the docs of AuthScheme that sending an access token via a query parameter is deprecated, according to MSC4126 / Matrix 1.11.
  • Constructing a Matrix URI for an event with a room alias is deprecated, according to MSC4132 / Matrix 1.11
  • Implement Eq and PartialEq for Metadata
  • Allow constructing api::error::MatrixErrorBody::NotJson outside of this crate.
  • Improve the API of Signatures, by implementing Deref and DerefMut, as well as From, Extend and FromIterator from a list of (entity, key_identifier, value) tuples.
  • Add (Owned)OneTimeKeyId and (Owned)OneTimeKeyName to identify one-time and fallback keys instead of using (Owned)DeviceKeyId.
  • Add (Owned)Base64PublicKey and (Owned)Base64PublicKeyOrDeviceId to identify cross-signing keys.
    • Add (owned_)base_64_public_key to construct a compile-time validated (Owned)Base64PublicKey.

Configuration

📅 Schedule: Branch creation - "after 8pm,before 6am" in timezone America/Los_Angeles, Automerge - "after 8pm,before 6am" in timezone America/Los_Angeles.

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@oxide-renovate
Copy link
Contributor Author

oxide-renovate bot commented Nov 19, 2024

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package [email protected] --precise 0.15.0
    Updating crates.io index
error: failed to select a version for the requirement `ruma-common = "^0.13.0"`
candidate versions found which didn't match: 0.15.0
location searched: crates.io index
required by package `ruma v0.10.1`
    ... which satisfies dependency `ruma = "^0.10.1"` (locked to 0.10.1) of package `microbot v0.1.0 (/tmp/renovate/repos/github/oxidecomputer/microbot/microbot)`

@oxide-renovate oxide-renovate bot force-pushed the renovate/ruma-common-0.x branch from 2e17ad2 to baa4568 Compare December 15, 2024 04:13
@oxide-renovate oxide-renovate bot force-pushed the renovate/ruma-common-0.x branch from baa4568 to 18037b6 Compare December 16, 2024 09:43
@oxide-renovate oxide-renovate bot changed the title Update Rust crate ruma-common to 0.14.1 Update Rust crate ruma-common to 0.15.0 Dec 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants